package database_handler;

/*********************************************************************
 * Class DatabasePara,
 * 1. control the action perform from interface
 *********************************************************************/

public class DatabaseParam{

    public void DatabaseParam(){}

    /* Table - GamePuzzles */
    public static String getTableGamePuzzles(){
        return TABLE_GAME_PUZZLES;
    }
    public static String[] getTableGamePuzzlesParam(){
        return TABLE_GAME_PUZZLES_PARAM;
    }

    // 20091015 phrase2 start
    /* Table - GamePuzzles */
    public static String getTableGameSolvingSteps(){
        return TABLE_GAME_SOLVING_STEPS;
    }
    public static String[] getTableGameSolvingStepsParam(){
        return  TABLE_GAME_SOLVING_STEPS_PARAM;
    }

    /* Table - GameErrors */
    public static String getTableGameErrors(){
        return TABLE_GAME_ERRORS;
    }
    public static String[] getTableGameErrorsParam(){
        return TABLE_GAME_ERRORS_PARAM;
    }

    /* Table - GameStepsMatrix */
    public static String getTableGameStepsMatrix(){
        return TABLE_GAME_STEPS_MATRIX;
    }
    public static String[] getTableGameStepsMatrixParam(){
        return TABLE_GAME_STEPS_MATRIX_PARAM;
    }

    /* Table - GameSkillsMatrix */
    public static String getTableGameSkillsMatrix(){
        return TABLE_GAME_SKILLS_MATRIX;
    }
    public static String[] getTableGameSkillsMatrixParam(){
        return TABLE_GAME_SKILLS_MATRIX_PARAM;
    }

    /* Table - GameAutoHintsGivingTIme */
    public static String getTableAutoHintsGivingTime(){
        return TABLE_GAME_AUTO_HINTS_GIVING_TIME;
    }
    public static String[] getTableAutoHintsGivingTimeParam(){
        return TABLE_GAME_AUTO_HINTS_GIVING_TIME_PARAM;
    }
    // 20091015 phrase2 end

    // 20091121 phrase2 start

    /* Table - GameAutoHintsGivingTIme */
    public static String getTableGameElminCellEntries(){
        return TABLE_GAME_ELMIN_CELL_ENTRIES;
    }
    public static String[] getTableGameElminCellEntriesParam(){
        return TABLE_GAME_ELMIN_CELL_ENTRIES_PARAM;
    }

    /* Table - UserMisconception */
    public static String getTableUserMisconception(){
        return TABLE_USER_MISCONCEPTION;
    }
    public static String[] getTableUserMisconceptionParam(){
        return TABLE_USER_MISCONCEPTION_PARAM;
    }

    // 20091121 phrase2 end

    /* Table - GamePuzzles */
    private final static String TABLE_GAME_PUZZLES = "gamepuzzles";
    // 20091015 phrase2 start
    private final static String TABLE_GAME_SOLVING_STEPS = " gameSolvingSteps";
    private final static String TABLE_GAME_ERRORS = "gameErrors";
    // 20091015 phrase2 end

    // 20091029 phrase2 start
    private final static String TABLE_GAME_STEPS_MATRIX = "gameStepsMatrix";
    private final static String TABLE_GAME_SKILLS_MATRIX = "gameSkillsMatrix";
    // 20091029 phrase2 end

    // 20091112 phrase2 start
    private final static String TABLE_GAME_AUTO_HINTS_GIVING_TIME = "GameAutoHintsGivingTIme";
    // 20091112 phrase2 end

    // 20091121 phrase2 start
    private final static String TABLE_GAME_ELMIN_CELL_ENTRIES = "GameElminCellEntries";
    // 20091121 phrase2 end

    // 20100118
    private final static String TABLE_USER_MISCONCEPTION = "UserMisconception";


    /* Function to chg if change parameter values */
    /* ActionPerform - StartButtonActionPerform */
    private final static String[] TABLE_GAME_PUZZLES_PARAM = {"PuzzleID", "NumGivenCells", "DefiniteValue1", "DefiniteValue2",
    "DefiniteValue3", "DefiniteValue4", "DefiniteValue5", "DefiniteValue6", "DefiniteValue7", "DefiniteValue8", "DefiniteValue9"};

    // 20091016 phrase2 start
    /*private final static String[] TABLE_GAME_SOLVING_STEPS_PARAM = {"UserID", "PuzzleID", "StepID", "GridID", "GridValue",
    "RulesUsed", "HintsUsed", "ElapsedTime"};*/
    // 201001113
    private final static String[] TABLE_GAME_SOLVING_STEPS_PARAM = {"UserID", "PuzzleID", "StepID", "GridID", "GridValue",
    "RowHint", "ColHint", "RulesHint", "AnswerHint", "SingleInGroup", "NakedSingle", "HiddenSingle",
    "ElapsedTime" , "Timestamp"};

    private final static String[] TABLE_GAME_ERRORS_PARAM = {"UserID", "ErrorClass", "ErrorMsg", "Timestamp"};
    // 20091016 phrase2 end

    // 20091029 phrase2 start
    private final static String[] TABLE_GAME_STEPS_MATRIX_PARAM = {"UserID", "PuzzleID", "StepID", "DepthSteps", "breadthSteps" , "Timestamp"};
    private final static String[] TABLE_GAME_SKILLS_MATRIX_PARAM = {"UserID", "PuzzleID", "GridID", "SingleInGroup",
    "NakedSingle", "HiddenSingle", "IntersectionReduction", "NakedPAirs", "HiddenPairs", "Timestamp"};
    // 20091029 phrase2 end

    // 20091121 phrase2 start
    private final static String[] TABLE_GAME_ELMIN_CELL_ENTRIES_PARAM = {"UserID", "PuzzleID", "GridID", "ElminValue", "IntersectReduct", "NakedPairs", "HiddenPairs", "GivenByHintsFlg" , "Timestamp"};
    // 20091121 phrase2 end

    // 20091112 phrase2 start
    private final static String[] TABLE_GAME_AUTO_HINTS_GIVING_TIME_PARAM = {"UserID", "DifficultTimeSlot", "MediumTimeSlot", "GentleTimeSlot"};
     // 20091112 phrase2 end

    // 20100118
    private final static String[] TABLE_USER_MISCONCEPTION_PARAM = {"userID", "puzzleID", "Misconception"};

}
